Socket
Socket
Sign inDemoInstall

@opuscapita/cache

Package Overview
Dependencies
Maintainers
9
Versions
13
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@opuscapita/cache

OpusCapita cache abstraction library


Version published
Weekly downloads
648
increased by200%
Maintainers
9
Weekly downloads
 
Created
Source

@opuscapita/cache

Cache library for OpusCapita. By default it ships with three cache providers: dummy, memory and redis.

To have a look at the full API, please visit the related wiki page.

Minimum setup

First got to your local code directory and run:

npm install @opuscapita/cache

If you are using the redis back-end, you'll need to have access to a running Consul server to get your endpoint configuration and a Redis server to connect to.

If all this is set up, go to you code and add the following command:

const Cache = require('@opuscapita/cache');

var cache = new Cache(); // using default: Memory driver

cache.put('hello', 'world').then(() => cache.get('hello')).then(console.log);

Default configuration

The default configuration object provides hints about what the module's standard behavior is like. In order to set plug-in (driver) specific configurations, you may add a sub-key to the configuration having the same name as the driver property you set and assign a configuration object there.

{
    driver : 'memory',
    keyPrefix: '',
    defaultExpire: 600, // in seconds
    pluginDirectory: 'plugins'
}

Example including memory driver configuration:

const Cache = require('@opuscapita/cache');

var cache = new Cache({
    driver : 'memory',
    keyPrefix: '',
    checkPeriod: 10,
    memory: {
      checkPeriod: 600,
      useClones: true
    },
    redis: {
      consul: {
        host: 'consul'
      },
      redis: {
        endpointName: 'redis',
        passwordKey: 'redis/password'  // consul KV key name
      }
    }
});

Changes in version 1.2.0

If environment variable KUBERNETES_SERVICE_DISCOVERY is set then config library is not used at all for service discovery. Redis port is read from REDIS_PORT environment variable (6379 is used by default if variable not set).

There is a feature? which cause redis/redis/ path in the configuration... In the future version this shall change

{
  driver: "redis",
  redis: {
    consul: {
      host: "consul"
      serviceSecretPath: '/path'
      port:8500,
      retryCount: 50,
      retryTimeout: 1000,
      logger: null,
    },
    redis: {
      endpointName: "redis",
      passwordKey: "redis/password",
    },
  },
}

Added new option to change redis retry interval and count.

Keywords

FAQs

Package last updated on 24 Oct 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc